// Generated from D:/development/code/companyCode/hex/em/hcdp-tools/hcdp-tool-file/src/main/resources/antlr/impala/ImpalaParser.g4 by ANTLR 4.13.1
package com.hex.ds.em.hcdp.impala.gen;

import org.antlr.v4.runtime.tree.ParseTreeVisitor;

/**
 * This interface defines a complete generic visitor for a parse tree produced
 * by {@link ImpalaParser}.
 *
 * @param <T> The return type of the visit operation. Use {@link Void} for
 * operations with no return type.
 */
public interface ImpalaParserVisitor<T> extends ParseTreeVisitor<T> {
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#statements}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStatements(ImpalaParser.StatementsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#statementSeparator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStatementSeparator(ImpalaParser.StatementSeparatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#empty}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitEmpty(ImpalaParser.EmptyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#statement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStatement(ImpalaParser.StatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#remark}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRemark(ImpalaParser.RemarkContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#explainStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExplainStatement(ImpalaParser.ExplainStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#explainOption}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExplainOption(ImpalaParser.ExplainOptionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#vectorizationOnly}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVectorizationOnly(ImpalaParser.VectorizationOnlyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#vectorizatonDetail}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVectorizatonDetail(ImpalaParser.VectorizatonDetailContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#execStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExecStatement(ImpalaParser.ExecStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#setting_clause_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSetting_clause_impala(ImpalaParser.Setting_clause_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#loadStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLoadStatement(ImpalaParser.LoadStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#replicationClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReplicationClause(ImpalaParser.ReplicationClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#exportStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExportStatement(ImpalaParser.ExportStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#importStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitImportStatement(ImpalaParser.ImportStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#replDumpStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReplDumpStatement(ImpalaParser.ReplDumpStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#replLoadStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReplLoadStatement(ImpalaParser.ReplLoadStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#replConfigs}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReplConfigs(ImpalaParser.ReplConfigsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#replConfigsList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReplConfigsList(ImpalaParser.ReplConfigsListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#replStatusStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReplStatusStatement(ImpalaParser.ReplStatusStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#ddlStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDdlStatement(ImpalaParser.DdlStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#ifExists}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIfExists(ImpalaParser.IfExistsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#restrictOrCascade}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRestrictOrCascade(ImpalaParser.RestrictOrCascadeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#ifNotExists}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIfNotExists(ImpalaParser.IfNotExistsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rewriteEnabled}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRewriteEnabled(ImpalaParser.RewriteEnabledContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rewriteDisabled}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRewriteDisabled(ImpalaParser.RewriteDisabledContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#storedAsDirs}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStoredAsDirs(ImpalaParser.StoredAsDirsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#orReplace}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitOrReplace(ImpalaParser.OrReplaceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createDatabaseStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateDatabaseStatement(ImpalaParser.CreateDatabaseStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dbLocation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDbLocation(ImpalaParser.DbLocationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dbProperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDbProperties(ImpalaParser.DbPropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dbPropertiesList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDbPropertiesList(ImpalaParser.DbPropertiesListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#switchDatabaseStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSwitchDatabaseStatement(ImpalaParser.SwitchDatabaseStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropDatabaseStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropDatabaseStatement(ImpalaParser.DropDatabaseStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#databaseComment}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDatabaseComment(ImpalaParser.DatabaseCommentContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createTableStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateTableStatement(ImpalaParser.CreateTableStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableWithSerdeproperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableWithSerdeproperties(ImpalaParser.TableWithSerdepropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableStored}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableStored(ImpalaParser.TableStoredContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#file_format}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFile_format(ImpalaParser.File_formatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#truncateTableStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTruncateTableStatement(ImpalaParser.TruncateTableStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropTableStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropTableStatement(ImpalaParser.DropTableStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatement(ImpalaParser.AlterStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterTableStatementSuffix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterTableStatementSuffix(ImpalaParser.AlterTableStatementSuffixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterTblPartitionStatementSuffix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterTblPartitionStatementSuffix(ImpalaParser.AlterTblPartitionStatementSuffixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementPartitionKeyType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementPartitionKeyType(ImpalaParser.AlterStatementPartitionKeyTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterViewStatementSuffix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterViewStatementSuffix(ImpalaParser.AlterViewStatementSuffixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterMaterializedViewStatementSuffix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterMaterializedViewStatementSuffix(ImpalaParser.AlterMaterializedViewStatementSuffixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterDatabaseStatementSuffix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterDatabaseStatementSuffix(ImpalaParser.AlterDatabaseStatementSuffixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterDatabaseSuffixProperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterDatabaseSuffixProperties(ImpalaParser.AlterDatabaseSuffixPropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterDatabaseSuffixSetOwner}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterDatabaseSuffixSetOwner(ImpalaParser.AlterDatabaseSuffixSetOwnerContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterDatabaseSuffixSetLocation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterDatabaseSuffixSetLocation(ImpalaParser.AlterDatabaseSuffixSetLocationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixRename}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixRename(ImpalaParser.AlterStatementSuffixRenameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixAddCol}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixAddCol(ImpalaParser.AlterStatementSuffixAddColContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixAddConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixAddConstraint(ImpalaParser.AlterStatementSuffixAddConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixDropConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixDropConstraint(ImpalaParser.AlterStatementSuffixDropConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixRenameCol}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixRenameCol(ImpalaParser.AlterStatementSuffixRenameColContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixUpdateStatsCol}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixUpdateStatsCol(ImpalaParser.AlterStatementSuffixUpdateStatsColContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixUpdateStats}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixUpdateStats(ImpalaParser.AlterStatementSuffixUpdateStatsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementChangeColPosition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementChangeColPosition(ImpalaParser.AlterStatementChangeColPositionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixAddPartitions}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixAddPartitions(ImpalaParser.AlterStatementSuffixAddPartitionsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixAddPartitionsElement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixAddPartitionsElement(ImpalaParser.AlterStatementSuffixAddPartitionsElementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixTouch}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixTouch(ImpalaParser.AlterStatementSuffixTouchContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixArchive}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixArchive(ImpalaParser.AlterStatementSuffixArchiveContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixUnArchive}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixUnArchive(ImpalaParser.AlterStatementSuffixUnArchiveContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionLocation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionLocation(ImpalaParser.PartitionLocationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixDropPartitions}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixDropPartitions(ImpalaParser.AlterStatementSuffixDropPartitionsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixProperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixProperties(ImpalaParser.AlterStatementSuffixPropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterViewSuffixProperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterViewSuffixProperties(ImpalaParser.AlterViewSuffixPropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterMaterializedViewSuffixRewrite}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterMaterializedViewSuffixRewrite(ImpalaParser.AlterMaterializedViewSuffixRewriteContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterMaterializedViewSuffixRebuild}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterMaterializedViewSuffixRebuild(ImpalaParser.AlterMaterializedViewSuffixRebuildContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixSerdeProperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixSerdeProperties(ImpalaParser.AlterStatementSuffixSerdePropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterIndexStatementSuffix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterIndexStatementSuffix(ImpalaParser.AlterIndexStatementSuffixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixFileFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixFileFormat(ImpalaParser.AlterStatementSuffixFileFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixClusterbySortby}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixClusterbySortby(ImpalaParser.AlterStatementSuffixClusterbySortbyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterTblPartitionStatementSuffixSkewedLocation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterTblPartitionStatementSuffixSkewedLocation(ImpalaParser.AlterTblPartitionStatementSuffixSkewedLocationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedLocations}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedLocations(ImpalaParser.SkewedLocationsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedLocationsList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedLocationsList(ImpalaParser.SkewedLocationsListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedLocationMap}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedLocationMap(ImpalaParser.SkewedLocationMapContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixLocation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixLocation(ImpalaParser.AlterStatementSuffixLocationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixSkewedby}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixSkewedby(ImpalaParser.AlterStatementSuffixSkewedbyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixExchangePartition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixExchangePartition(ImpalaParser.AlterStatementSuffixExchangePartitionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixRenamePart}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixRenamePart(ImpalaParser.AlterStatementSuffixRenamePartContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixStatsPart}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixStatsPart(ImpalaParser.AlterStatementSuffixStatsPartContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixMergeFiles}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixMergeFiles(ImpalaParser.AlterStatementSuffixMergeFilesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixBucketNum}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixBucketNum(ImpalaParser.AlterStatementSuffixBucketNumContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createIndexStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateIndexStatement(ImpalaParser.CreateIndexStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#locationPath}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLocationPath(ImpalaParser.LocationPathContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropIndexStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropIndexStatement(ImpalaParser.DropIndexStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tablePartitionPrefix}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTablePartitionPrefix(ImpalaParser.TablePartitionPrefixContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#blocking}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitBlocking(ImpalaParser.BlockingContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixCompact}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixCompact(ImpalaParser.AlterStatementSuffixCompactContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterStatementSuffixSetOwner}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterStatementSuffixSetOwner(ImpalaParser.AlterStatementSuffixSetOwnerContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#fileFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFileFormat(ImpalaParser.FileFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#inputFileFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitInputFileFormat(ImpalaParser.InputFileFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tabTypeExpr}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTabTypeExpr(ImpalaParser.TabTypeExprContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partTypeExpr}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartTypeExpr(ImpalaParser.PartTypeExprContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tabPartColTypeExpr}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTabPartColTypeExpr(ImpalaParser.TabPartColTypeExprContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#descStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDescStatement(ImpalaParser.DescStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#analyzeStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAnalyzeStatement(ImpalaParser.AnalyzeStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowStatement(ImpalaParser.ShowStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#lockStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLockStatement(ImpalaParser.LockStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#lockDatabase}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLockDatabase(ImpalaParser.LockDatabaseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#lockMode}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLockMode(ImpalaParser.LockModeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#unlockStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUnlockStatement(ImpalaParser.UnlockStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#unlockDatabase}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUnlockDatabase(ImpalaParser.UnlockDatabaseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createRoleStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateRoleStatement(ImpalaParser.CreateRoleStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropRoleStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropRoleStatement(ImpalaParser.DropRoleStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#grantPrivileges}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGrantPrivileges(ImpalaParser.GrantPrivilegesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#revokePrivileges}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRevokePrivileges(ImpalaParser.RevokePrivilegesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#grantRole}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGrantRole(ImpalaParser.GrantRoleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#revokeRole}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRevokeRole(ImpalaParser.RevokeRoleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showRoleGrants}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowRoleGrants(ImpalaParser.ShowRoleGrantsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showRoles}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowRoles(ImpalaParser.ShowRolesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showCurrentRole}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowCurrentRole(ImpalaParser.ShowCurrentRoleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#setRole}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSetRole(ImpalaParser.SetRoleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showGrants}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowGrants(ImpalaParser.ShowGrantsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showRolePrincipals}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowRolePrincipals(ImpalaParser.ShowRolePrincipalsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privilegeIncludeColObject}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivilegeIncludeColObject(ImpalaParser.PrivilegeIncludeColObjectContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privilegeObject}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivilegeObject(ImpalaParser.PrivilegeObjectContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privObject}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivObject(ImpalaParser.PrivObjectContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privObjectCols}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivObjectCols(ImpalaParser.PrivObjectColsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privilegeList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivilegeList(ImpalaParser.PrivilegeListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privlegeDef}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivlegeDef(ImpalaParser.PrivlegeDefContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#privilegeType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrivilegeType(ImpalaParser.PrivilegeTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#principalSpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrincipalSpecification(ImpalaParser.PrincipalSpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#principalName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrincipalName(ImpalaParser.PrincipalNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#withGrantOption}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWithGrantOption(ImpalaParser.WithGrantOptionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#grantOptionFor}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGrantOptionFor(ImpalaParser.GrantOptionForContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#adminOptionFor}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAdminOptionFor(ImpalaParser.AdminOptionForContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#withAdminOption}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWithAdminOption(ImpalaParser.WithAdminOptionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#metastoreCheck}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitMetastoreCheck(ImpalaParser.MetastoreCheckContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#resourceList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitResourceList(ImpalaParser.ResourceListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#resource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitResource(ImpalaParser.ResourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#resourceType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitResourceType(ImpalaParser.ResourceTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createFunctionStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateFunctionStatement(ImpalaParser.CreateFunctionStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropFunctionStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropFunctionStatement(ImpalaParser.DropFunctionStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#reloadFunctionStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitReloadFunctionStatement(ImpalaParser.ReloadFunctionStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createMacroStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateMacroStatement(ImpalaParser.CreateMacroStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropMacroStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropMacroStatement(ImpalaParser.DropMacroStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createViewStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateViewStatement(ImpalaParser.CreateViewStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createMaterializedViewStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateMaterializedViewStatement(ImpalaParser.CreateMaterializedViewStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#viewPartition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitViewPartition(ImpalaParser.ViewPartitionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropViewStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropViewStatement(ImpalaParser.DropViewStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropMaterializedViewStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropMaterializedViewStatement(ImpalaParser.DropMaterializedViewStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showFunctionIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowFunctionIdentifier(ImpalaParser.ShowFunctionIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#showStmtIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitShowStmtIdentifier(ImpalaParser.ShowStmtIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableComment}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableComment(ImpalaParser.TableCommentContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tablePartition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTablePartition(ImpalaParser.TablePartitionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableBuckets}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableBuckets(ImpalaParser.TableBucketsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableSkewed}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableSkewed(ImpalaParser.TableSkewedContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rowFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRowFormat(ImpalaParser.RowFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#recordReader}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRecordReader(ImpalaParser.RecordReaderContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#recordWriter}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRecordWriter(ImpalaParser.RecordWriterContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rowFormatSerde}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRowFormatSerde(ImpalaParser.RowFormatSerdeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rowFormatDelimited}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRowFormatDelimited(ImpalaParser.RowFormatDelimitedContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableRowFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableRowFormat(ImpalaParser.TableRowFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tablePropertiesPrefixed}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTablePropertiesPrefixed(ImpalaParser.TablePropertiesPrefixedContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableProperties}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableProperties(ImpalaParser.TablePropertiesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tablePropertiesList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTablePropertiesList(ImpalaParser.TablePropertiesListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#keyValueProperty}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitKeyValueProperty(ImpalaParser.KeyValuePropertyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#keyProperty}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitKeyProperty(ImpalaParser.KeyPropertyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableRowFormatFieldIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableRowFormatFieldIdentifier(ImpalaParser.TableRowFormatFieldIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableRowFormatCollItemsIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableRowFormatCollItemsIdentifier(ImpalaParser.TableRowFormatCollItemsIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableRowFormatMapKeysIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableRowFormatMapKeysIdentifier(ImpalaParser.TableRowFormatMapKeysIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableRowFormatLinesIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableRowFormatLinesIdentifier(ImpalaParser.TableRowFormatLinesIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableRowNullFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableRowNullFormat(ImpalaParser.TableRowNullFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableFileFormat}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableFileFormat(ImpalaParser.TableFileFormatContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableLocation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableLocation(ImpalaParser.TableLocationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameTypeList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameTypeList(ImpalaParser.ColumnNameTypeListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameTypeOrConstraintList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameTypeOrConstraintList(ImpalaParser.ColumnNameTypeOrConstraintListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameColonTypeList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameColonTypeList(ImpalaParser.ColumnNameColonTypeListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameList(ImpalaParser.ColumnNameListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnName(ImpalaParser.ColumnNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#extColumnName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExtColumnName(ImpalaParser.ExtColumnNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameOrderList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameOrderList(ImpalaParser.ColumnNameOrderListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnParenthesesList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnParenthesesList(ImpalaParser.ColumnParenthesesListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#enableValidateSpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitEnableValidateSpecification(ImpalaParser.EnableValidateSpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#enableSpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitEnableSpecification(ImpalaParser.EnableSpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#validateSpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitValidateSpecification(ImpalaParser.ValidateSpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#enforcedSpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitEnforcedSpecification(ImpalaParser.EnforcedSpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#relySpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRelySpecification(ImpalaParser.RelySpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateConstraint(ImpalaParser.CreateConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterConstraintWithName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterConstraintWithName(ImpalaParser.AlterConstraintWithNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#pkConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPkConstraint(ImpalaParser.PkConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#createForeignKey}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCreateForeignKey(ImpalaParser.CreateForeignKeyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterForeignKeyWithName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterForeignKeyWithName(ImpalaParser.AlterForeignKeyWithNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedValueElement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedValueElement(ImpalaParser.SkewedValueElementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedColumnValuePairList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedColumnValuePairList(ImpalaParser.SkewedColumnValuePairListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedColumnValuePair}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedColumnValuePair(ImpalaParser.SkewedColumnValuePairContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedColumnValues}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedColumnValues(ImpalaParser.SkewedColumnValuesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedColumnValue}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedColumnValue(ImpalaParser.SkewedColumnValueContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#skewedValueLocationElement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSkewedValueLocationElement(ImpalaParser.SkewedValueLocationElementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#orderSpecification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitOrderSpecification(ImpalaParser.OrderSpecificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#nullOrdering}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitNullOrdering(ImpalaParser.NullOrderingContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameOrder}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameOrder(ImpalaParser.ColumnNameOrderContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameCommentList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameCommentList(ImpalaParser.ColumnNameCommentListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameComment}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameComment(ImpalaParser.ColumnNameCommentContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnRefOrder}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnRefOrder(ImpalaParser.ColumnRefOrderContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameType(ImpalaParser.ColumnNameTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameTypeOrConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameTypeOrConstraint(ImpalaParser.ColumnNameTypeOrConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableConstraint(ImpalaParser.TableConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameTypeConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameTypeConstraint(ImpalaParser.ColumnNameTypeConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnConstraint(ImpalaParser.ColumnConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#foreignKeyConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitForeignKeyConstraint(ImpalaParser.ForeignKeyConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#colConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColConstraint(ImpalaParser.ColConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterColumnConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterColumnConstraint(ImpalaParser.AlterColumnConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterForeignKeyConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterForeignKeyConstraint(ImpalaParser.AlterForeignKeyConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#alterColConstraint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAlterColConstraint(ImpalaParser.AlterColConstraintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableConstraintPrimaryKey}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableConstraintPrimaryKey(ImpalaParser.TableConstraintPrimaryKeyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#constraintOptsCreate}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitConstraintOptsCreate(ImpalaParser.ConstraintOptsCreateContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#constraintOptsAlter}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitConstraintOptsAlter(ImpalaParser.ConstraintOptsAlterContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnNameColonType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnNameColonType(ImpalaParser.ColumnNameColonTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#colType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColType(ImpalaParser.ColTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#colTypeList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColTypeList(ImpalaParser.ColTypeListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#type_db_col}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitType_db_col(ImpalaParser.Type_db_colContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#primitiveType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrimitiveType(ImpalaParser.PrimitiveTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#listType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitListType(ImpalaParser.ListTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#structType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStructType(ImpalaParser.StructTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#mapType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitMapType(ImpalaParser.MapTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#unionType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUnionType(ImpalaParser.UnionTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#setOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSetOperator(ImpalaParser.SetOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#queryStatementExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitQueryStatementExpression(ImpalaParser.QueryStatementExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#queryStatementExpressionBody}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitQueryStatementExpressionBody(ImpalaParser.QueryStatementExpressionBodyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#withClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWithClause(ImpalaParser.WithClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#cteStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCteStatement(ImpalaParser.CteStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#fromStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFromStatement(ImpalaParser.FromStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#singleFromStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSingleFromStatement(ImpalaParser.SingleFromStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#regularBody}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRegularBody(ImpalaParser.RegularBodyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#atomSelectStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAtomSelectStatement(ImpalaParser.AtomSelectStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectStatement(ImpalaParser.SelectStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#setOpSelectStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSetOpSelectStatement(ImpalaParser.SetOpSelectStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectStatementWithCTE}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectStatementWithCTE(ImpalaParser.SelectStatementWithCTEContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#body}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitBody(ImpalaParser.BodyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#insertClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitInsertClause(ImpalaParser.InsertClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#destination}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDestination(ImpalaParser.DestinationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#limitClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLimitClause(ImpalaParser.LimitClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#deleteStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDeleteStatement(ImpalaParser.DeleteStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnAssignmentClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnAssignmentClause(ImpalaParser.ColumnAssignmentClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#setColumnsClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSetColumnsClause(ImpalaParser.SetColumnsClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#updateStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUpdateStatement(ImpalaParser.UpdateStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#sqlTransactionStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSqlTransactionStatement(ImpalaParser.SqlTransactionStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#startTransactionStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStartTransactionStatement(ImpalaParser.StartTransactionStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#transactionMode}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTransactionMode(ImpalaParser.TransactionModeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#transactionAccessMode}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTransactionAccessMode(ImpalaParser.TransactionAccessModeContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#isolationLevel}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIsolationLevel(ImpalaParser.IsolationLevelContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#levelOfIsolation}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLevelOfIsolation(ImpalaParser.LevelOfIsolationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#commitStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCommitStatement(ImpalaParser.CommitStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rollbackStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRollbackStatement(ImpalaParser.RollbackStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#setAutoCommitStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSetAutoCommitStatement(ImpalaParser.SetAutoCommitStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#abortTransactionStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAbortTransactionStatement(ImpalaParser.AbortTransactionStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#mergeStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitMergeStatement(ImpalaParser.MergeStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#whenClauses}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWhenClauses(ImpalaParser.WhenClausesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#whenNotMatchedClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWhenNotMatchedClause(ImpalaParser.WhenNotMatchedClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#whenMatchedAndClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWhenMatchedAndClause(ImpalaParser.WhenMatchedAndClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#whenMatchedThenClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWhenMatchedThenClause(ImpalaParser.WhenMatchedThenClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#updateOrDelete}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUpdateOrDelete(ImpalaParser.UpdateOrDeleteContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#killQueryStatement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitKillQueryStatement(ImpalaParser.KillQueryStatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#groupByClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGroupByClause(ImpalaParser.GroupByClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#groupby_expression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGroupby_expression(ImpalaParser.Groupby_expressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#groupByEmpty}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGroupByEmpty(ImpalaParser.GroupByEmptyContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rollupStandard}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRollupStandard(ImpalaParser.RollupStandardContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#rollupOldSyntax}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRollupOldSyntax(ImpalaParser.RollupOldSyntaxContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#groupingSetExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGroupingSetExpression(ImpalaParser.GroupingSetExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#groupingSetExpressionMultiple}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGroupingSetExpressionMultiple(ImpalaParser.GroupingSetExpressionMultipleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#groupingExpressionSingle}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitGroupingExpressionSingle(ImpalaParser.GroupingExpressionSingleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#havingClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHavingClause(ImpalaParser.HavingClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#havingCondition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHavingCondition(ImpalaParser.HavingConditionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#expressionsInParenthesis}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExpressionsInParenthesis(ImpalaParser.ExpressionsInParenthesisContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#expressionsNotInParenthesis}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExpressionsNotInParenthesis(ImpalaParser.ExpressionsNotInParenthesisContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#expressionPart}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExpressionPart(ImpalaParser.ExpressionPartContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#expressions}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExpressions(ImpalaParser.ExpressionsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnRefOrderInParenthesis}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnRefOrderInParenthesis(ImpalaParser.ColumnRefOrderInParenthesisContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#columnRefOrderNotInParenthesis}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitColumnRefOrderNotInParenthesis(ImpalaParser.ColumnRefOrderNotInParenthesisContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#orderByClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitOrderByClause(ImpalaParser.OrderByClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#clusterByClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitClusterByClause(ImpalaParser.ClusterByClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionByClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionByClause(ImpalaParser.PartitionByClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#distributeByClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDistributeByClause(ImpalaParser.DistributeByClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#sortByClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSortByClause(ImpalaParser.SortByClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#function}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFunction(ImpalaParser.FunctionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#functionName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFunctionName(ImpalaParser.FunctionNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#castExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCastExpression(ImpalaParser.CastExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#caseExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCaseExpression(ImpalaParser.CaseExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#whenExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWhenExpression(ImpalaParser.WhenExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#floorExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFloorExpression(ImpalaParser.FloorExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#floorDateQualifiers}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFloorDateQualifiers(ImpalaParser.FloorDateQualifiersContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#extractExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExtractExpression(ImpalaParser.ExtractExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#timeQualifiers}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTimeQualifiers(ImpalaParser.TimeQualifiersContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#constant}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitConstant(ImpalaParser.ConstantContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#stringLiteralSequence}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStringLiteralSequence(ImpalaParser.StringLiteralSequenceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#charSetStringLiteral}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCharSetStringLiteral(ImpalaParser.CharSetStringLiteralContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dateLiteral}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDateLiteral(ImpalaParser.DateLiteralContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#timestampLiteral}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTimestampLiteral(ImpalaParser.TimestampLiteralContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#timestampLocalTZLiteral}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTimestampLocalTZLiteral(ImpalaParser.TimestampLocalTZLiteralContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#intervalValue}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIntervalValue(ImpalaParser.IntervalValueContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#intervalLiteral}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIntervalLiteral(ImpalaParser.IntervalLiteralContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#intervalExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIntervalExpression(ImpalaParser.IntervalExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#intervalQualifiers}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIntervalQualifiers(ImpalaParser.IntervalQualifiersContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#atomExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAtomExpression(ImpalaParser.AtomExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceUnaryOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceUnaryOperator(ImpalaParser.PrecedenceUnaryOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#isCondition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIsCondition(ImpalaParser.IsConditionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceBitwiseXorOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceBitwiseXorOperator(ImpalaParser.PrecedenceBitwiseXorOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceStarOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceStarOperator(ImpalaParser.PrecedenceStarOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedencePlusOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedencePlusOperator(ImpalaParser.PrecedencePlusOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceConcatenateOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceConcatenateOperator(ImpalaParser.PrecedenceConcatenateOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceAmpersandOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceAmpersandOperator(ImpalaParser.PrecedenceAmpersandOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceBitwiseOrOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceBitwiseOrOperator(ImpalaParser.PrecedenceBitwiseOrOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceRegexpOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceRegexpOperator(ImpalaParser.PrecedenceRegexpOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceComparisonOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceComparisonOperator(ImpalaParser.PrecedenceComparisonOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceNotOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceNotOperator(ImpalaParser.PrecedenceNotOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceLogicOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceLogicOperator(ImpalaParser.PrecedenceLogicOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#expression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExpression(ImpalaParser.ExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceExpression(ImpalaParser.PrecedenceExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#precedenceSimilarExpressionIn}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrecedenceSimilarExpressionIn(ImpalaParser.PrecedenceSimilarExpressionInContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#subQueryExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSubQueryExpression(ImpalaParser.SubQueryExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#booleanValue}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitBooleanValue(ImpalaParser.BooleanValueContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#booleanValueTok}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitBooleanValueTok(ImpalaParser.BooleanValueTokContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableOrPartition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableOrPartition(ImpalaParser.TableOrPartitionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionSpec}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionSpec(ImpalaParser.PartitionSpecContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionVal}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionVal(ImpalaParser.PartitionValContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropPartitionSpec}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropPartitionSpec(ImpalaParser.DropPartitionSpecContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionSpecLogicOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionSpecLogicOperator(ImpalaParser.PartitionSpecLogicOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropPartitionVal}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropPartitionVal(ImpalaParser.DropPartitionValContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#dropPartitionOperator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDropPartitionOperator(ImpalaParser.DropPartitionOperatorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#sysFuncNames}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSysFuncNames(ImpalaParser.SysFuncNamesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#descFuncNames}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitDescFuncNames(ImpalaParser.DescFuncNamesContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#identifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitIdentifier(ImpalaParser.IdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#functionIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFunctionIdentifier(ImpalaParser.FunctionIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#principalIdentifier}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrincipalIdentifier(ImpalaParser.PrincipalIdentifierContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#nonReserved}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitNonReserved(ImpalaParser.NonReservedContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#sql11ReservedKeywordsUsedAsFunctionName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSql11ReservedKeywordsUsedAsFunctionName(ImpalaParser.Sql11ReservedKeywordsUsedAsFunctionNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectClause(ImpalaParser.SelectClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectList(ImpalaParser.SelectListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectTrfmClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectTrfmClause(ImpalaParser.SelectTrfmClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectItem}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectItem(ImpalaParser.SelectItemContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#trfmClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTrfmClause(ImpalaParser.TrfmClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectExpression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectExpression(ImpalaParser.SelectExpressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#selectExpressionList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSelectExpressionList(ImpalaParser.SelectExpressionListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_clause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_clause(ImpalaParser.Window_clauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_defn}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_defn(ImpalaParser.Window_defnContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_specification}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_specification(ImpalaParser.Window_specificationContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_frame}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_frame(ImpalaParser.Window_frameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_range_expression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_range_expression(ImpalaParser.Window_range_expressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_value_expression}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_value_expression(ImpalaParser.Window_value_expressionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_frame_start_boundary}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_frame_start_boundary(ImpalaParser.Window_frame_start_boundaryContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#window_frame_boundary}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWindow_frame_boundary(ImpalaParser.Window_frame_boundaryContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableAllColumns}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableAllColumns(ImpalaParser.TableAllColumnsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableOrColumn}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableOrColumn(ImpalaParser.TableOrColumnContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#expressionList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitExpressionList(ImpalaParser.ExpressionListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#aliasList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAliasList(ImpalaParser.AliasListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#fromClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFromClause(ImpalaParser.FromClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#fromSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitFromSource(ImpalaParser.FromSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#atomjoinSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitAtomjoinSource(ImpalaParser.AtomjoinSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#joinSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitJoinSource(ImpalaParser.JoinSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#joinSourcePart}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitJoinSourcePart(ImpalaParser.JoinSourcePartContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#uniqueJoinSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUniqueJoinSource(ImpalaParser.UniqueJoinSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#uniqueJoinExpr}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUniqueJoinExpr(ImpalaParser.UniqueJoinExprContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#uniqueJoinToken}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUniqueJoinToken(ImpalaParser.UniqueJoinTokenContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#joinToken}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitJoinToken(ImpalaParser.JoinTokenContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#lateralView}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLateralView(ImpalaParser.LateralViewContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableAlias}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableAlias(ImpalaParser.TableAliasContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableBucketSample}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableBucketSample(ImpalaParser.TableBucketSampleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#splitSample}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSplitSample(ImpalaParser.SplitSampleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableSample}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableSample(ImpalaParser.TableSampleContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableSource(ImpalaParser.TableSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#uniqueJoinTableSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitUniqueJoinTableSource(ImpalaParser.UniqueJoinTableSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableName(ImpalaParser.TableNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#viewName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitViewName(ImpalaParser.ViewNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#subQuerySource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSubQuerySource(ImpalaParser.SubQuerySourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitioningSpec}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitioningSpec(ImpalaParser.PartitioningSpecContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionTableFunctionSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionTableFunctionSource(ImpalaParser.PartitionTableFunctionSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionedTableFunction}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionedTableFunction(ImpalaParser.PartitionedTableFunctionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#whereClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitWhereClause(ImpalaParser.WhereClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#searchCondition}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitSearchCondition(ImpalaParser.SearchConditionContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#valuesClause}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitValuesClause(ImpalaParser.ValuesClauseContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#valuesTableConstructor}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitValuesTableConstructor(ImpalaParser.ValuesTableConstructorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#valueRowConstructor}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitValueRowConstructor(ImpalaParser.ValueRowConstructorContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#virtualTableSource}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVirtualTableSource(ImpalaParser.VirtualTableSourceContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#hint}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHint(ImpalaParser.HintContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#hintList}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHintList(ImpalaParser.HintListContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#hintItem}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHintItem(ImpalaParser.HintItemContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#hintName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHintName(ImpalaParser.HintNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#hintArgs}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHintArgs(ImpalaParser.HintArgsContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#hintArgName}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitHintArgName(ImpalaParser.HintArgNameContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#custom_variable_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCustom_variable_impala(ImpalaParser.Custom_variable_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#compute_stats_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCompute_stats_impala(ImpalaParser.Compute_stats_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#partitionByClause_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPartitionByClause_impala(ImpalaParser.PartitionByClause_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#tableSample_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitTableSample_impala(ImpalaParser.TableSample_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#repeatable_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRepeatable_impala(ImpalaParser.Repeatable_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#compute_stats_incremental_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitCompute_stats_incremental_impala(ImpalaParser.Compute_stats_incremental_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#refresh_impala}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitRefresh_impala(ImpalaParser.Refresh_impalaContext ctx);
	/**
	 * Visit a parse tree produced by {@link ImpalaParser#invalidate_metadata}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitInvalidate_metadata(ImpalaParser.Invalidate_metadataContext ctx);
}
